Rocky Linux 9 firewalld Kurulumu ve Güvenlik Duvarı Yönetimi
Bu rehberde ne öğreneceksiniz?
Rocky Linux 9 üzerinde firewalld kullanarak güvenlik duvarı kurmayı, zonelar ile trafiği yönetmeyi ve uygulamalarınız için gerekli portları güvenli şekilde açmayı öğreneceksiniz. Ayrıca kalıcı kurallar, özel servis tanımları ve özel zone oluşturma gibi gelişmiş yönetim tekniklerini uygulayabileceksiniz.
1. firewalld Nedir? (Kısa Teknik Özet)
Firewalld, Linux çekirdeğinin paket filtreleme sistemi olan nftables için bir yönetim katmanıdır. Zones, services ve permanent/runtime kuralları ile gelişmiş güvenlik yönetimi sunar.
Bu rehberde:
-
Zones mantığını anlayacak,
-
firewalld kurulumunu yapacak,
-
Ağ arayüzlerini zone’lara atayacak,
-
Servis/port açmayı öğrenecek,
-
Özel servis & zone oluşturabileceksin.
2. Ön Koşullar
-
Rocky Linux 9 kurulu bir sunucu
-
SSH ile bağlanan sudo yetkili bir kullanıcı
-
Sunucu örneği: tr1-node01.rabisu.cloud
3. firewalld’ın Temel Kavramları
3.1 Zones (Bölgeler)
Zones, ağ güvenlik seviyelerini temsil eder.
| Zone | Açıklama |
|---|---|
| drop | Tüm gelen paketler yanıtsız düşer. |
| block | Gelen istekler ICMP hata mesajıyla reddedilir. |
| public | Güvensiz ağlar; sadece seçili servislere izin verilir. |
| external | NAT kullanılan dış ağlar için uygundur. |
| internal | İç ağ; daha güvenilir trafik. |
| dmz | İzole edilmiş makineler. |
| work | Ofis ortamı. |
| home | Ev ağı. |
| trusted | Tüm trafiğe izin verir; dikkatle kullanılmalıdır. |
3.2 Rule Permanence (Kural Kalıcılığı)
Firewalld'da iki katman vardır:
-
runtime → Anlık kurallar
-
permanent → Kalıcı kurallar
-
Runtime → Permanent kaydetmek:
sudo firewall-cmd --runtime-to-permanent
Anlık yapılandırmayı kalıcı hale getirir.
4. Firewalld Kurulumu ve Servisin Başlatılması
Kurulum
sudo dnf install firewalld -y
Firewalld yazılımını kurar.
Servisi Etkinleştirme
sudo systemctl enable firewalld
sudo systemctl start firewalld
Servisi başlatır ve açılışta çalışmasını sağlar.
Durum Kontrolü
sudo firewall-cmd --state
Çıktı: running
5. Varsayılan Zone ve Aktif Zone İncelemesi
Varsayılan zona bak:
firewall-cmd --get-default-zone
Aktif zoneları görüntüle:
firewall-cmd --get-active-zones
Zone’un içeriğini göster:
sudo firewall-cmd --list-all
6. Ağ Arayüzünü Başka Bir Zone’a Taşımak
sudo firewall-cmd --zone=home --change-interface=eth0
eth0 artık "home" zone kurallarını kullanır.
7. Servis Ekleme (HTTP/HTTPS/SSH)
Mevcut servisleri listele:
firewall-cmd --get-services
HTTP servisini ekle:
sudo firewall-cmd --zone=public --add-service=http
Kalıcı yapmak:
sudo firewall-cmd --zone=public --add-service=http --permanent
8. Port Açma (5000/TCP Örneği)
sudo firewall-cmd --zone=public --add-port=5000/tcp
Kalıcı:
sudo firewall-cmd --zone=public --add-port=5000/tcp --permanent
Port aralığı:
sudo firewall-cmd --zone=public --add-port=4990-4999/udp --permanent
9. Özel Servis Tanımlama (XML ile)
Şablon kopyalama:
sudo cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/ornek.xml
Düzenlenmiş XML Örneği:
<service>
<short>Ornek Servis</short>
<description>Bu özel bir servis tanımıdır.</description>
<port protocol="tcp" port="7777"/>
<port protocol="udp" port="8888"/>
</service>
Aktif Etme:
sudo firewall-cmd --reload
10. Özel Zone Oluşturma
Yeni zone ekle:
sudo firewall-cmd --permanent --new-zone=web_sunucu
Yükle:
sudo firewall-cmd --reload
Servisleri ekle:
sudo firewall-cmd --zone=web_sunucu --add-service=http --permanent
sudo firewall-cmd --zone=web_sunucu --add-service=https --permanent
sudo firewall-cmd --zone=web_sunucu --add-service=ssh --permanent
Arayüz ata:
sudo firewall-cmd --zone=web_sunucu --change-interface=eth0
SSS (Sıkça Sorulan Sorular)
1. —reload ve restart arasındaki fark nedir?
reload kuralları yeniler. restart tüm bağlantıları kesebilir.
2. Firewalld neyi kullanır?
Arka planda nftables çalışır.
3. Permanent kural neden hemen aktif olmuyor?
Çünkü reload gerekir.
4. IP yasaklamak mümkün mü?
Evet, rich rules ile DROP uygulanabilir.
5. Varsayılan zone nasıl değiştirilir?
bash
sudo firewall-cmd --set-default-zone=work
Sonuç
Artık firewalld yapılandırmasını, zone yönetimini ve servis eklemeyi biliyorsun. Bunlarla güvenli ve sürdürülebilir bir ağ yapısı oluşturabilirsin.
Rabisu Bulut üzerinde kendi Rocky Linux sunucunu kurarak bu adımları hemen uygulayabilirsin. 🚀